package com.novelastudios.application
{
	import com.novelastudios.namespaces.ns_internal;
	
	import flash.display.LoaderInfo;
	import flash.display.MovieClip;
	
	import mx.core.Application;
	import mx.core.ApplicationGlobals;
	import flash.display.Sprite;
	
	use namespace ns_internal;
	
	/**
	 * @author John Bailey
	 */
	public class FlexInitParams extends InitParams
	{
		public function FlexInitParams(root:Sprite=null)
		{
			super(root ? root : Application.application as Sprite);
		}
		///////////////////////////////////////////////////////////////////////////////
		//								ACCESSORS
		///////////////////////////////////////////////////////////////////////////////
		
		///////////////////////////////
		//-------------------------
		//	object
		//-------------------------
		
		///////////////////////////////////////////////////////////////////////////////
		//								PRIVATE METHODS
		///////////////////////////////////////////////////////////////////////////////
		/**
		 * Invoked on Construction
		 */		
		override protected function init(root:Sprite):void
		{
			_rootRef = root;
			if(!_rootRef) return;
			var loaderInfo:LoaderInfo 	= LoaderInfo(_rootRef.loaderInfo);
			var params:Object			= Application.application.parameters;
			setSourceData(params ? params : {});
		}
	}
}